Computer systems are fundamentally used for the storage and manipulation of data. One type of data that is commonly stored, manipulated, and displayed by computer systems is called spatial data, which is data that represents or maps space in the physical world. Examples of spatial data include road maps, terrain maps, and weather maps. Spatial data is commonly used by applications that provide navigation, orientation, and representation of the progress of movement of moving persons, vehicles, or weather patterns.
Normally these applications use a Geographic Information System (GIS) or internet mapping software, running on general purpose spatial servers to query and render base maps. Base maps are then enriched with other data, in order to present useful information. General purpose spatial servers are composed of three key components: a general purpose DBMS (database management system) with additional spatial extensions to allow for spatial data storage and indexed queries through spatial indexes, a spatial data rendering engine, which renders the spatial data into images once the data is retrieved by queries to the database system, and general purpose server hardware and operating systems that run the software components.
These general purpose spatial systems are often rich in functionality. For example, in addition to retrieving and rendering spatial data, they support functions such as online insertion and update of spatial objects and transactions against spatial data. But, given that these general purpose spatial systems are architected to run in general purpose hardware, they cannot take advantage of a very large set of optimizations that can be applied to the spatial data retrieval, rendering, and image generation, given the assumption that the spatial data is read only and has a known size. For this reason, general purpose spatial data servers are very resource intensive on general purpose server hardware, which can lead to performance degradation.
Thus, what is needed is a technique for retrieving spatial data that provides better performance than does a general purpose spatial data server.